<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<title>调价单</title>
<link rel="stylesheet" type="text/css"
	href="/../extjs/resources/css/ext-all.css" />
<script type="text/javascript" src="/../extjs/ext-all.js"></script>
<script type="text/javascript" src="/../extjs/ext-lang-zh_CN.js"></script>

<style>
	a{
		font-size:16px;
	}
</style>

<script type="text/javascript">
var pageBean = null;
var fielmenu = new Ext.menu.Menu({
});
var fielmenu2 = new Ext.menu.Menu({
});
var fielmenu3 = new Ext.menu.Menu({
	items:[{text:'审核',handler : function(btn) {
		Ext.getCmp('billno').setDisabled(true);
			Ext.getCmp('billDate').setDisabled(true);
			Ext.getCmp('inSubjectName').setDisabled(true);
			Ext.getCmp('deSubjectName').setDisabled(true);
			Ext.getCmp('voucherNo').setDisabled(true);
			Ext.getCmp('adjustMethod').setDisabled(true);
			Ext.getCmp('maker').setDisabled(true);
			Ext.getCmp('permitter').setDisabled(true);
			Ext.getCmp('remark').setDisabled(true);
			Ext.getCmp('wkzwjsb-grid').setDisabled(true);
			Ext.getCmp('savebtn').disable();
			Ext.getCmp('deletebtn').disable();
			var grid=Ext.pluck(Ext.getCmp("wkzwjsb-grid").getStore().data.items,"data");
			Ext.each(grid,function(obj){
				 Ext.Ajax.request({
			   			//被用来向服务器发起请求默认的url  
			   			url : "msq/examine",
			   			//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串
			   			params : {
			   				"price":obj.price,
			   				"proid":obj.proID,
			   				"num":obj.number
			   			},
			   			//请求时使用的默认的http方法  
			   			method : "post",
			   			//请求成功时回调函数  
			   			success : function() {
			   				findAll(0);
			   				updateState();
			   			 	Ext.Msg.alert("提示","审核成功");
			   			 	
			   			},
			   			//请求失败时回调函数  
			   			failure : function() {
			   			}
			   		});
			});
     }
		
	},{text:'反审核'}]
});
var fielmenu4 = new Ext.menu.Menu({
});
var fielmenu5 = new Ext.menu.Menu({
});
var fielmenu6 = new Ext.menu.Menu({
});
var fielmenu7 = new Ext.menu.Menu({
});
	Ext.onReady(function() {
		findAll(0);
		Ext.create("Ext.window.Window",{
			title: '调价单',
            width: 630,
            height:430,
            anchor:'100%',
            bbar : [ {
    			xtype : "splitbutton",
    			id:"savebtn",
    			text : '保存',
    			width : 90,
    			menu : fielmenu,
    			listeners:{   
                     "click":function(){
                    	 
                    	Ext.getCmp('billno').setDisabled(true);
             			Ext.getCmp('billDate').setDisabled(true);
             			Ext.getCmp('inSubjectName').setDisabled(true);
             			Ext.getCmp('deSubjectName').setDisabled(true);
             			Ext.getCmp('voucherNo').setDisabled(true);
             			Ext.getCmp('adjustMethod').setDisabled(true);
             			Ext.getCmp('maker').setDisabled(true);
             			Ext.getCmp('permitter').setDisabled(true);
             			Ext.getCmp('remark').setDisabled(true);
             			Ext.getCmp('wkzwjsb-grid').setDisabled(true);
             			Ext.getCmp('savebtn').disable();
	         			Ext.getCmp('deletebtn').disable();
                    	 
                    	 var grid2 = Ext.getCmp("wkzwjsb-grid").getStore();
       	              var data ={
                       		  billno: Ext.getCmp('billno').getValue(),
                       		  billDate: Ext.getCmp("billDate").getValue(),
                       		  inSubjectName: Ext.getCmp("inSubjectName").getValue(),
                       		  deSubjectName: Ext.getCmp("deSubjectName").getValue(),
                       		  voucherNo: Ext.getCmp("voucherNo").getValue(),
                       		  adjustMethod: Ext.getCmp("adjustMethod").getValue(),
                       		  maker: Ext.getCmp("maker").getValue(),
                       		  permitter: Ext.getCmp("permitter").getValue(),
                       		  aduiting: "未审核",
                       		  remark: Ext.getCmp("remark").getValue(),
                       		  infos : Ext.pluck(grid2.data.items,"data")
       	              };
//        	              alert(JSON.stringify(data));
       	              Ext.Ajax.request({
       	        			//被用来向服务器发起请求默认的url  
       	        			url : "msq/msqadd",
       	        			//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串
   	        				headers:{"Content-Type":"application/json"},  
       	        			params : JSON.stringify(data),
       	        			//请求时使用的默认的http方法  
       	        			method : "post",
       	        			//请求成功时回调函数  
       	        			success : function() {
       	        				findAllAdjust(grid2);
       	        			 	Ext.Msg.alert("提示","新增成功");
       	        			},
       	        			//请求失败时回调函数  
       	        			failure : function(){
       	        				
       	        			}
       	        		});
                     }
                  }   
    		},{
      			xtype : "splitbutton",
    			text : '删除',
    			id:"deletebtn",
    			width :90,
    			menu : fielmenu2,
    			listeners:{   
                   	"click":function(){
       			        Ext.MessageBox.confirm('确认', '您确定要执行此操作吗？', show);
       			     function show(obj){
    			        	if(obj=='yes'){
			      	             Ext.Ajax.request({
			      	        		//被用来向服务器发起请求默认的url  
			      	        		url : "msq/msqremove",
			      	        		//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串
			      	        		params : {"id":Ext.getCmp('billno').getValue()},
			      	        			//请求时使用的默认的http方法  
			      	        		method : "post",
			      	        		//请求成功时回调函数  
			      	        		success : function() {
			      	        			findAllAdjust(Ext.getCmp("wkzwjsb-grid").getStore());
			      	        			Ext.Msg.alert("提示","删除成功");
			      	        		},
			      	        			//请求失败时回调函数  
			      	        		failure : function() {
			      	        		}
			      	        	});
        			        }
    			        }
                    }
                 }
    		}, {
				xtype : "splitbutton",
				text : '修改',
				id:"updatebtn",
				width : 90,
				menu : fielmenu4,
				listeners:{   
	               	"click":function(){
	               		Ext.getCmp('billno').setDisabled(false);
             			Ext.getCmp('billDate').setDisabled(false);
             			Ext.getCmp('inSubjectName').setDisabled(false);
             			Ext.getCmp('deSubjectName').setDisabled(false);
             			Ext.getCmp('voucherNo').setDisabled(false);
             			Ext.getCmp('adjustMethod').setDisabled(false);
             			Ext.getCmp('maker').setDisabled(false);
             			Ext.getCmp('permitter').setDisabled(false);
             			Ext.getCmp('remark').setDisabled(false);
             			Ext.getCmp('wkzwjsb-grid').setDisabled(false);
             			Ext.getCmp('savebtn').enable();
	         			Ext.getCmp('deletebtn').enable();
	               	}
	            }
			}, {
				xtype : "splitbutton",
				text : '审核',
				width : 90,
				menu : fielmenu3,
				listeners:{   
		           	"click":function(){
		           		
		           	}
		        }
		}, {
				xtype : "splitbutton",
				text : '上一页',
				width : 90,
				menu : fielmenu6,
				handler : function(btn) {
					findAll(pageBean.previouspage);
				}
			}, {
					xtype : "splitbutton",
					text : '下一页',
					width : 90,
					menu : fielmenu7,
					handler : function(btn) {
						findAll(pageBean.nextpage);
					}
			} ],
            listeners : {
    			activate : function() {
    			}
    		},
            items : [{
            	xtype:'panel',
            	layout:'column',
            	defaultType: 'textfield',
            	baseCls: 'x-plain',
	         	anchor:'100%',
	         	items: [{
	         		id:"billDate",
	             	fieldLabel: '单据日期',
	             	format:"y-m-d",
			        xtype: 'datefield',
	             	name: 'cgqglx',
	             	margin:"5 10 0 35",
	             	value: new Date()
	         	},{
	         		id:"billno",
	             	fieldLabel: '单据号码',
	             	name: 'djrq',
	             	value: '',
	             	margin:"5 25"
	             	
	         	},{
	         		id:"inSubjectName",
	             	fieldLabel: '增值科目',
	             	name: 'zzkm',
	             	margin:"5 10 0 35",
	             	value: ''
	             	
	         	},{
	         		id:"voucherNo",
	             	fieldLabel: '凭证编号',
	             	name: 'pzdh',
	             	margin:"5 25",
	             	value: ''
	             	
	         	},{
	         		id:"deSubjectName",
	             	fieldLabel: '减值科目',
	             	name: 'jzkm',
	             	value: '',
	             	margin:"5 10 10 35",
	             	
	         	},{
	         		id:"adjustMethod",
	             	fieldLabel: '调整方式',
	             	margin:"5 25 10 25",
					xtype:'combo',
	             	name: 'tzfs',
	             	displayField: 'name',
    				valueField: 'abbr',
					store: Ext.create('Ext.data.Store', {
						fields: ['abbr', 'name'],
    					data : [
        					{"abbr":"调单价", "name":"调单价"},
        					{"abbr":"调金额", "name":"调金额"}
					   ]
					}),
					value: '调单价',
        			typeAhead: true,
        			mode: 'local',
        			triggerAction: 'all',
        			selectOnFocus:true,
	         	}]
            },{
            	xtype: 'tabpanel',
            	baseCls: 'x-plain',
            	layout: 'fit',
            	width: '100%',
            	height: 235,
                autoScroll: false,
                items: [{
                    rtl: false,
                    title: '内容',
                    id: 'wkzwjsb-grid',
                    xtype:'grid',
                    layout: 'fit',
                    baseCls: 'x-plain',
					style:{'top': '25px'},
					autoScroll: true,
					stripeRows:true,
					trackMouseOver:true,
					bodyStyle: "margin-top:20px",
					plugins: [
        				Ext.create('Ext.grid.plugin.CellEditing', {
            				clicksToEdit: 1
        				})
    				],
    				listeners:{
    					//容器双击事件
    					containerdblclick: function(grid, e, eOpts){
    					
    						if(!grid.getStore().count(false)){
	    						grid.getStore().add({'wlmc':'', 'xqrq':'','dw':''});
    						}
    					},
    				},
			
				columns: [
				 {header: '（栏号）',
	                    		xtype: 'rownumberer',
	                    		dataIndex: 'lh', 
	                    		width: 50,
								sortable: false,
            					xhooks: {
                					renderer: function(v, meta, record) {
                    					meta.tdAttr = 'style="vertical-align:center;height:' + record.data.rowHeight + 'px"';
                    					return this.callParent(arguments);
                					}
            					}
        					},
                    		{ header: '物料编号', style:"color: green",dataIndex: 'proID', width:150, editor: { xtype: 'textfield'} },
                    		{ header: '（物料名称）', dataIndex: 'prodName'},
                    		{ header: '（规格型号）', dataIndex: 'prodsize'},
                    		{ header: '（单位）', dataIndex: 'danwei'},
                    		{ header: '（库存量）', dataIndex: 'number', editor: { xtype: 'numberfield'} },
				{ header: '（平均成本）', dataIndex: 'bavgCost', width:70, groupable: false }, 
				{ header: '单价', dataIndex: 'price', width: 70, groupable: false ,editor: { xtype: 'textfield'}}, 
				{ header: '（调价金额）', dataIndex: 'adjustprice', width: 70, groupable: false,editor: { xtype: 'textfield'} },
				{ header: '分录备注', dataIndex: 'mark', width:150, editor: { xtype: 'textfield'} }
			     ]
    				},{
                    title: '备注',
                    xtype:'panel',
	            	baseCls: 'x-plain',
		         	anchor: '100%',
		         	bodyStyle: "margin-top:25px",
		         	items: [{
		         		fieldLabel: '备注',
	                    id :"remark",
		         		labelWidth: 50,
		         		baseCls: 'x-plain',
             			xtype: 'textarea',
             			name: 'bz',
             			style:{'top': '25px'},
             			width: 570,
             			height: 160
             		}]
                }] },{
            	xtype:'panel',
            	layout:'column',
            	defaultType: 'textfield',
            	baseCls: 'x-plain',
	         	anchor:'100%',
	         	items: [{
	         		id:"maker",
	             	fieldLabel: '制单人员',
	             	name: 'zdry',
	             	value: 'Admin',
	             	margin:"8 25 8 25"
	         	},{
	         		id:"permitter",
	             	fieldLabel: '复核人员',
	             	name: 'fhry',
	             	margin:"8 25 8 25"
	         	}]
            },]
		}).show();
	});
	
	function findAll(num) {
		//var song=Ext.encode(forms.getForm().getValues());
		Ext.Ajax.request({
			//被用来向服务器发起请求默认的url  
			url : "msq/msqfindAll",
			//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串  
			params : {
				"pagesize":num
			},
			//请求时使用的默认的http方法  
			method : "post",
			//请求成功时回调函数  
			success : function(data) {
				var res = Ext.decode(data.responseText);
				pageBean = res;

				findAllAdjust(data);
			},
			//请求失败时回调函数  
			failure : function() {
			}
		});
	}
	function findAllAdjust(data){
// 		data.removeAll();
		var pp=Ext.JSON.decode(data.responseText);
		Ext.each(pp.pagedata,function(obj){
			Ext.getCmp('billno').setValue(obj.billno);
			Ext.getCmp('billDate').setValue(obj.billDate);
			Ext.getCmp('inSubjectName').setValue(obj.inSubjectName);
			
			Ext.getCmp('deSubjectName').setValue(obj.deSubjectName);
	
			Ext.getCmp('voucherNo').setValue(obj.voucherNo);
			Ext.getCmp('adjustMethod').setValue(obj.adjustMethod);
			Ext.getCmp('maker').setValue(obj.maker);
			Ext.getCmp('permitter').setValue(obj.permitter);
//				Ext.getCmp('wareID').setValue(obj.wareID);
			Ext.getCmp('remark').setValue(obj.remark);
			Ext.getCmp('wkzwjsb-grid').getStore().loadData(obj.infosvo);
		});
	};
	
	function clearAll(){
		
		
	};
	
	function updateState(){
		Ext.Ajax.request({
			//被用来向服务器发起请求默认的url  
			url : "msq/msqupdate",
			//请求时发送后台的参数,既可以是Json对象，也可以直接使用“name = value”形式的字符串  
			params : {
				"id":Ext.getCmp('billno').getValue()
			},
			//请求时使用的默认的http方法  
			method : "post"
		});
	};
	
</script>
</head>
<body>

</body>
</html>